/**
 * $Revision: 1.0 $
 * $Author: Geln Yang $
 * $Date: May 19, 2010 10:30:55 PM $
 *
 * Author: Geln Yang
 * Date  : May 19, 2010 10:30:55 PM
 *
 */
package com.gooex.service.schedual;

import java.util.List;

import com.gooex.domain.common.Subscription;

/**
 * @author Geln Yang
 * @version 1.0
 */
public interface ISubscriptionManager {

	public static final Object SUBSCRIPTION_CONFIRM_MAIL_SUBJECT = "subscription_confirm_mail_subject";

	public static final Object SUBSCRIPTION_CONFIRM_MAIL_CONTENT = "subscription_confirm_mail_content";

	public Subscription create(String email, String category, String interval);

	public void savaOrUpdate(Subscription subscription);

	public void remove(Subscription subscription);

	public Subscription getSubscription(String email, String category);

	public List<Subscription> getSubscriptionsByEmail(String email);

	public List<Subscription> getSubscriptionsByCategory(String category);

	public List<Subscription> getSubscriptionsByInterval(String interval);

	public List<Subscription> getConfirmedSubscriptions(String category, String[] intervals);

}
